package pl.edu.pk.psb.bc.assembler;

import java.util.HashSet;
import java.util.Set;

import org.springframework.stereotype.Component;

import pl.edu.pk.psb.bc.ds.MiejsceDs;
import pl.edu.pk.psb.bc.dto.MiejsceDto;
import pl.edu.pk.psb.bc.util.Miejsce;

@Component
public class MiejsceAssembler {
	
	public MiejsceDs konwertuj(MiejsceDto dto){
		MiejsceDs miejsceDs = new MiejsceDs();
		miejsceDs.setId(dto.getId());
		miejsceDs.setRzad(dto.getRzad());
		miejsceDs.setFotel(dto.getFotel());
		miejsceDs.setTyp(dto.getTyp().getTyp());
		
		return miejsceDs;
	}
	
	public Set<MiejsceDs> konwertujDoDs(Set<MiejsceDto> miejscaDto) {
		Set<MiejsceDs> miejscaDs = new HashSet<MiejsceDs>();
		for (MiejsceDto miejsceDto : miejscaDto) {
			miejscaDs.add(konwertuj(miejsceDto));
		}
		return miejscaDs;
	}
	
	public MiejsceDto konwertuj(MiejsceDs ds){
		MiejsceDto miejsceDto = new MiejsceDto();
		miejsceDto.setId(ds.getId());
		miejsceDto.setRzad(ds.getRzad());
		miejsceDto.setFotel(ds.getFotel());
		miejsceDto.setTyp(Miejsce.pobierzZeStringu(ds.getTyp()));
		
		return miejsceDto;
	}
	
	public Set<MiejsceDto> konwertujDoDto(Set<MiejsceDs> miejscaDs) {
		Set<MiejsceDto> miejscaDto = new HashSet<MiejsceDto>();
		for (MiejsceDs miejsceDs : miejscaDs) {
			miejscaDto.add(konwertuj(miejsceDs));
		}
		return miejscaDto;
	}
}
